Skip to main content

Lokal Load Balancing Algoritmlari

Zamonaviy veb-xizmatlar va ilovalar ko‘plab foydalanuvchilarga xizmat ko‘rsatadi. Bitta serverga juda ko‘p so‘rov tushsa, u sekinlashadi yoki ishlamay qolishi mumkin. Shu sababli, yuklamani bir nechta serverlarga taqsimlash zarurati paydo bo‘ladi. Load balancing texnologiyasi aynan shu muammoni hal qiladi: foydalanuvchi so‘rovlarini bir nechta serverlarga taqsimlab, xizmatlarning uzluksiz va barqaror ishlashini ta’minlaydi.

Load balancing (yuklamani muvozanatlash) — bu tarmoqda yoki serverlar klasterida kiruvchi so‘rovlarni bir nechta serverlar yoki xizmatlar o‘rtasida samarali taqsimlash jarayonidir. Bu usul xizmatlarning uzluksiz ishlashini, yuqori tezlik va ishonchlilikni ta’minlaydi.

Quyida amaliyotda eng ko‘p ishlatiladigan lokal load balancing algoritmlari va ularning ishlash prinsiplari keltirilgan.


1. Round Robin

Round Robin algoritmi eng oddiy va keng tarqalgan usul bo‘lib, har bir yangi so‘rovni navbatdagi serverga yuboradi. Masalan, 3 ta server bo‘lsa, so‘rovlar 1-2-3 tartibida aylana boshlaydi.

Afzalliklari:

  • Oddiy va tez ishlaydi
  • Qo‘llash oson

Kamchiliklari:

  • Serverlarning real yuklanishini hisobga olmaydi

2. Least Connections

Least Connections algoritmi har bir yangi so‘rovni hozirda eng kam ulanishga ega bo‘lgan serverga yuboradi. Bu usul serverlar o‘rtasida yukni teng taqsimlashga yordam beradi, ayniqsa so‘rovlar soni va davomiyligi har xil bo‘lsa.

Afzalliklari:

  • Dinamik yuk taqsimoti
  • Resurslardan samarali foydalanish

3. IP Hash

IP Hash algoritmida mijozning IP manzili asosida so‘rov qaysi serverga yuborilishi aniqlanadi. Shu sababli, bir xil IP manzildan kelgan so‘rovlar doim bir serverga tushadi.

Afzalliklari:

  • Sessiyani saqlash (session persistence)
  • Keshdan samarali foydalanish

4. Weighted Round Robin

Weighted Round Robin — bu oddiy Round Robin algoritmining takomillashtirilgan ko‘rinishi. Har bir serverga og‘irlik (weight) belgilanadi va kuchliroq serverlar ko‘proq so‘rov oladi.

Afzalliklari:

  • Server resurslariga mos yuk taqsimoti
  • Moslashuvchanlik

5. Random (Tasodifiy)

Random algoritmi har bir so‘rovni tasodifiy tanlangan serverga yuboradi. Bu usul kichik klasterlar uchun oddiy va tezkor yechim hisoblanadi.


Amaliy misol: Nginx bilan Round Robin

Nginx konfiguratsiyasida Round Robin algoritmini quyidagicha sozlash mumkin:

http {
upstream backend {
server 192.168.1.11;
server 192.168.1.12;
server 192.168.1.13;
}

server {
listen 80;
location / {
proxy_pass http://backend;
}
}
}

Xulosa

Lokal load balancing algoritmlari yordamida tarmoq va server resurslaridan samarali foydalanish, xizmatlarning uzluksiz va tez ishlashini ta’minlash mumkin. Har bir algoritmning o‘ziga xos afzallik va kamchiliklari bor, amaliyotda tarmoq hajmi va xizmatlar turiga qarab mos